home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 30
/
Aminet 30 (1999)(Schatztruhe)[!][Apr 1999].iso
/
Aminet
/
dev
/
lang
/
SmallEiffel.lha
/
SmallEiffel
/
bin_c
/
compile_to_c1.c
< prev
next >
Wrap
C/C++ Source or Header
|
1998-12-22
|
16KB
|
763 lines
/*
-- ANSI C code generated by :
-- SmallEiffel The GNU Eiffel Compiler -- Release (- 0.79) --
-- Copyright (C), 1994-98 - LORIA - UHP - CRIN - INRIA - FRANCE --
-- Dominique COLNET and Suzanne COLLIN - colnet@loria.fr --
-- http://www.loria.fr/SmallEiffel --
*/
#include "compile_to_c.h"
T55 M55={55,NULL,NULL,NULL,NULL};
T107 M107={NULL,NULL};
T276 M276={276,NULL,NULL,NULL,NULL};
T76 M76={NULL,0,0,0};
T215 M215={NULL,NULL,NULL,NULL,NULL,0};
T221 M221={221,NULL,0,0,0};
T220 M220={220,NULL,NULL,NULL,NULL};
T213 M213={213,NULL,NULL,NULL,NULL,NULL,NULL};
T132 M132={132,NULL,NULL,NULL,NULL,0};
T170 M170={170,NULL,0,0};
T282 M282={282,NULL,NULL};
T43 M43={0,0,NULL,0,0,NULL};
T321 M321={NULL};
T316 M316={NULL,NULL};
T64 M64={NULL,NULL};
T73 M73={NULL,NULL,0,NULL,NULL,0,0,0,0};
T310 M310={310,NULL};
T286 M286={NULL,NULL,NULL,NULL,NULL,0};
T250 M250={250,NULL,NULL,NULL,NULL};
T119 M119={119,NULL,NULL,NULL,NULL,0};
T174 M174={174,NULL,0};
T270 M270={270,NULL};
T268 M268={268,NULL};
T365 M365={365,NULL,NULL,NULL};
T277 M277={277,NULL,NULL,NULL,NULL,0};
T382 M382={382,NULL,0,0};
T57 M57={57,NULL,0,0};
T86 M86={NULL,0,0};
T138 M138={138,NULL,NULL,NULL};
T298 M298={298};
T36 M36={NULL,NULL,NULL};
T27 M27={0};
T280 M280={280,NULL,0,NULL};
T171 M171={171,NULL,NULL,NULL,NULL,NULL,NULL};
T187 M187={187,NULL,NULL};
T66 M66={NULL,NULL,0,NULL,NULL,0,0,0,0,0};
T356 M356={356,NULL,NULL,NULL,NULL,0,NULL,NULL};
T85 M85={NULL,NULL};
T104 M104={NULL,NULL,NULL,NULL,NULL};
T195 M195={NULL,NULL};
T193 M193={193,NULL,NULL};
T109 M109={NULL,0,0};
T246 M246={246,NULL,NULL,NULL};
T34 M34={0,0,0,0,0,NULL,0,NULL,0,0,NULL,0,0,NULL,NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0};
T113 M113={113,NULL,NULL,NULL,NULL,0};
T375 M375={375,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL};
T165 M165={165,NULL,NULL,NULL,NULL};
T275 M275={275,NULL,NULL,NULL,NULL,NULL};
T191 M191={191,NULL,0,0,0};
T97 M97={NULL,0,0,0};
T202 M202={202,NULL,0,0};
T145 M145={145,NULL,NULL,NULL};
T218 M218={218,NULL,NULL};
T156 M156={156,NULL,NULL};
T178 M178={178,NULL,NULL};
T269 M269={269,NULL};
T121 M121={121,NULL,NULL,NULL,NULL,0};
T261 M261={NULL,0,0,0};
T291 M291={291,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
T22 M22={NULL,0,0,0,0};
T252 M252={252,NULL,NULL,NULL,NULL,NULL};
T331 M331=0;
T47 M47={NULL,0,0};
T123 M123={123,NULL,NULL,NULL,NULL,0};
T324 M324={324,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,0};
T296 M296={296};
T148 M148={148,NULL,NULL,NULL};
T273 M273={273,NULL};
T142 M142={142,NULL,NULL,NULL};
T157 M157={157,NULL};
T88 M88={NULL,NULL};
T315 M315={315,NULL};
T29 M29=NULL;
T245 M245={245,NULL,NULL,NULL,NULL};
T130 M130={130,NULL,NULL,NULL};
T122 M122={122,NULL,NULL,NULL,NULL,0};
T360 M360={360,NULL,0,0,0};
T89 M89={NULL,0,0,0};
T185 M185={185,NULL,0,0,0};
T318 M318={NULL,0,0,0};
T308 M308={NULL,0,0,0};
T332 M332=0;
T7 M7={NULL,0,0};
T168 M168={168,NULL};
T17 M17={0};
T146 M146={146,NULL,NULL,NULL};
T314 M314={314,NULL,NULL,NULL,NULL,NULL,0};
T388 M388={388,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,0,0,0};
T279 M279={NULL,0,0,0};
T211 M211={211,NULL,NULL,NULL,NULL,NULL,NULL};
T290 M290={290,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
T226 M226={NULL,NULL,NULL};
T101 M101={NULL,NULL};
T303 M303={303,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL};
T10 M10={0,NULL,NULL,NULL};
T364 M364={NULL,NULL,NULL};
T84 M84=NULL;
T96 M96={NULL,NULL,NULL};
T254 M254={254,NULL,NULL,NULL,NULL,NULL,NULL};
T72 M72={NULL,0};
T120 M120={120,NULL,NULL,NULL,NULL,0};
T153 M153={153,NULL,NULL,NULL,NULL};
T87 M87={NULL};
T59 M59={NULL,NULL,0,NULL,NULL,0,0,0,0,0};
T92 M92={NULL,NULL,0,NULL,NULL,0,0,0,0};
T361 M361={361,NULL,0,0,0};
T266 M266={266,NULL};
T78 M78={NULL,NULL,NULL,NULL};
T379 M379={NULL,NULL,0,NULL,NULL,0,0,0,0};
T348 M348={NULL,NULL,0,NULL,NULL,0,0,0,0,0};
T70 M70={NULL,0};
T390 M390={390,NULL,0,0};
T385 M385={385,NULL,0,0};
T367 M367={367,NULL,0,0};
T352 M352={352,NULL,0,0};
T345 M345={345,NULL,0,0};
T49 M49={49,NULL,0,0};
T137 M137={137,NULL,NULL,NULL,NULL,0};
T177 M177={177,NULL,NULL,NULL,NULL,NULL};
T102 M102={NULL,NULL};
T233 M233={NULL,NULL,NULL,NULL,NULL,NULL};
T205 M205={205,NULL,NULL,NULL,NULL,NULL,NULL};
T389 M389={389,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL};
T82 M82={NULL,NULL};
T374 M374={374,NULL,NULL};
T313 M313={313,NULL};
T103 M103={NULL,NULL,NULL,NULL};
T283 M283={283,NULL,NULL,NULL};
T380 M380={380,NULL,0,0};
T208 M208={208,NULL,0,0};
T198 M198={NULL,NULL,NULL,NULL,NULL,NULL,NULL};
T158 M158={158,NULL,NULL};
T204 M204={0};
T305 M305={305,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0};
T21 M21={0,0,0};
T79 M79={NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
T244 M244={244,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
T139 M139={139,NULL,NULL,NULL};
T354 M354={NULL,0,0,0};
T172 M172={NULL,0,0,0};
T333 M333={NULL,NULL,0,NULL,NULL,0,0,0,0,0};
T147 M147={147,NULL,NULL,NULL};
T155 M155={155,NULL,NULL};
T320 M320={NULL,NULL};
T278 M278={NULL,NULL};
T263 M263={263,NULL,NULL,NULL,NULL};
T267 M267={267,NULL};
T212 M212={212,NULL,NULL,NULL,NULL,NULL,NULL};
T199 M199={199,NULL,NULL,NULL,NULL,NULL,NULL};
T341 M341=NULL;
T50 M50={50,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL};
T271 M271={271,NULL};
T95 M95={NULL};
T94 M94={NULL,NULL};
T210 M210={210,NULL,NULL,NULL,NULL,NULL,NULL};
T297 M297={297};
T357 M357={NULL};
T133 M133={133,NULL,NULL,NULL,NULL,0};
T183 M183={183,NULL,NULL,NULL,0,0};
T317 M317={NULL,NULL};
T377 M377={377,NULL,NULL};
T124 M124={124,NULL,NULL,NULL,NULL,0};
T126 M126={126,NULL,NULL,NULL,NULL,0};
T243 M243={NULL,NULL,NULL,NULL,NULL};
T257 M257={257,NULL,NULL};
T45 M45={NULL,0};
T340 M340={NULL,0,0};
T62 M62={NULL,0,0};
T39 M39={NULL,0,0,0};
T80 M80={NULL,0,0,0};
T235 M235={NULL,0,0,0};
T228 M228={NULL,0,0,0};
T260 M260={260,NULL,NULL,NULL,NULL};
T173 M173={173,NULL,NULL};
T358 M358={NULL,0,0,0};
T328 M328={NULL,0,0,0};
T180 M180={180,NULL,0,NULL};
T106 M106={NULL,0,0,0};
T238 M238={NULL,0,0,0};
T387 M387={387,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL};
T175 M175={175,NULL,NULL,NULL,NULL,NULL};
T274 M274={274,NULL,NULL,NULL,NULL};
T334 M334={NULL,0,0};
T371 M371={NULL};
T272 M272={272,NULL};
T264 M264={264,NULL};
T293 M293={293};
T347 M347=NULL;
T349 M349=NULL;
T231 M231={231,NULL,NULL};
T343 M343={343,NULL,0,0};
T366 M366={366,NULL};
T35 M35=NULL;
T295 M295={295};
T135 M135={135,NULL,NULL,NULL,NULL,0};
T384 M384={384,NULL,NULL,NULL,NULL,NULL,NULL,0,0,NULL,NULL,NULL};
T344 M344=NULL;
T255 M255={255,NULL,NULL,NULL,NULL};
T350 M350={350,NULL,0,0};
T67 M67={NULL,0,0};
T151 M151={151,NULL,0,0};
T196 M196={NULL,0,0};
T300 M300={300};
T194 M194={194,NULL,NULL,NULL,NULL,0};
T28 M28={0};
T163 M163={163,NULL,NULL,NULL};
T322 M322={NULL,0,0,0};
T258 M258={258,NULL,NULL,NULL,NULL};
T207 M207={207,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
T60 M60={NULL,0,0};
T99 M99={99,NULL,0,0};
T110 M110={110,NULL,NULL,NULL,NULL};
T287 M287={287,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
T342 M342={NULL,NULL,0,NULL,NULL,0,0,0,0,0};
T292 M292={292};
T75 M75={NULL,NULL,NULL,NULL};
T240 M240={240,NULL,NULL,0};
T363 M363={0};
T152 M152={152,NULL,NULL,NULL,NULL};
T150 M150={150,NULL,NULL,NULL};
T330 M330={0,0};
T74 M74={NULL};
T24 M24={NULL,0,0,NULL,NULL,0,NULL,0,0,0,0,NULL,NULL};
T232 M232={232,NULL,NULL,NULL,NULL,NULL,NULL};
T190 M190={190,NULL,NULL,NULL,0};
T164 M164={164,NULL,NULL,NULL,NULL};
T326 M326={326,NULL,0,0};
T217 M217={NULL,0,0};
T134 M134={134,NULL,NULL,NULL,NULL,0};
T234 M234={NULL,NULL};
T368 M368={368,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL};
T219 M219={NULL,NULL,NULL,NULL,NULL};
T336 M336={NULL,0,0};
T216 M216={NULL,NULL,NULL,NULL};
T111 M111={111,NULL,0,0,0};
T247 M247={247,NULL,NULL,NULL};
T325 M325={NULL,NULL,0,NULL,NULL,0,0,0,0,0};
T338 M338={NULL,0,0};
T25 M25={NULL,0,0,0,0,0,0,0,0,0,0,0,0,NULL,NULL,NULL,NULL,NULL,0,0,0,0,0,NULL,0,0,NULL,NULL,NULL,0,0,NULL,0};
T241 M241={241,NULL,NULL,NULL,0,0};
T285 M285={285,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
T125 M125={125,NULL,NULL,NULL,NULL,0};
T127 M127={127,NULL,NULL,NULL,NULL,0};
T128 M128={128,NULL,NULL,NULL};
T302 M302={302,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0};
T373 M373={373,NULL,NULL,NULL};
T378 M378={378,NULL,NULL,NULL};
T69 M69={NULL,0,0};
T136 M136={136,NULL,NULL,NULL,NULL,0};
T149 M149={149,NULL,NULL,NULL};
T144 M144={144,NULL,NULL,NULL};
T131 M131={131,NULL,NULL,NULL,NULL,0};
T160 M160={160,NULL,NULL,NULL};
T206 M206={206,NULL,NULL,NULL,NULL,NULL,NULL};
T259 M259={259,NULL};
T63 M63={0,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
T227 M227={NULL,NULL};
T230 M230={230,NULL,NULL};
T143 M143={143,NULL,NULL,NULL};
T169 M169={169,NULL};
T188 M188={188,NULL,0,NULL};
T225 M225={225,NULL,NULL};
T222 M222={222,NULL,NULL,NULL,NULL};
T376 M376={376,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL};
T306 M306={306,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL};
T37 M37={0,NULL,0,0};
T44 M44=0;
T372 M372={372,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL};
T7*se_ms(int c,char*e){
T7*s=malloc(sizeof(T7));
s->_count=c;
s->_capacity=c+1;
s->_storage=malloc(c+2);
memcpy(s->_storage,e,c);
return s;}
T7*e2s(char*e){
return se_ms(strlen(e),e);}
char*s2e(T7*s){
char*e=malloc(1+s->_count);
memcpy(e,s->_storage,s->_count);
e[s->_count]='\0';
return e;}
/*
-- This file is free software, which comes along with SmallEiffel. This
-- software is distributed in the hope that it will be useful, but WITHOUT
-- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
-- FITNESS FOR A PARTICULAR PURPOSE. You can modify it as you want, provided
-- this header is kept unaltered, and a notification of the changes is added.
-- You are allowed to redistribute it and sell it, alone or as a part of
-- another product.
-- Copyright (C) 1994-98 LORIA - UHP - CRIN - INRIA - FRANCE
-- Dominique COLNET and Suzanne COLLIN - colnet@loria.fr
-- http://www.loria.fr/SmallEiffel
--
*/
/*
This file (boost.c) is automatically included when `run_control.boost' is
true (ie. only for mode -boost).
*/
void se_print_run_time_stack (void) {
fprintf(SE_ERR,"Eiffel program crash at run time.\n");
fprintf(SE_ERR,"No trace when using option \"-boost\"\n");
}
void sigrsp(int sig) {
printf("Received signal %d (man signal).\n",sig);
se_print_run_time_stack();
exit(1);
}
int fBC5tmp_native_array=0;
T9 oBC5tmp_native_array=NULL;
T9 r5tmp_native_array(void){
if(fBC5tmp_native_array==0){
fBC5tmp_native_array=1;
oBC5tmp_native_array=calloc(128,sizeof(T3));
}
return oBC5tmp_native_array;}
void r5append_in_format(T5 C,T0* a1,T2 a2){
T2 _i=0;
{int i;
double d=C;
sprintf(_spfd+2,"%d",(a2));
for(i=2;_spfd[i]!=0;i++);
_spfd[i]='f';
_spfd[++i]=0;
sprintf((r5tmp_native_array()),_spfd,d);
}
_i=0;
while (!(((r5tmp_native_array())[_i])==('\0'))) {
r7extend(((T7*)a1),(r5tmp_native_array())[_i]);
_i=(_i)+(1);
}
}
T6 r6_ix_not(T6 C){
T6 R=0;
/*[IF*/
if(C){
}
else{
R=1;
}
/*FI]*/
return R;
}
void r2append_in(T2 C,T0* a1){
T2 _i=0;
T2 _val=0;
/*[IF*/
if((C)==(0)){
r7extend(((T7*)a1),'0');
}
else{
/*[IF*/
if((C)>(0)){
_i=((((T7*)a1))->_count/*4*/)+(1);
_val=C;
while (!((_val)==(0))) {
r7extend(((T7*)a1),r2digit((_val)%(10)));
_val=(_val)/(10);
}
}
else{
r7extend(((T7*)a1),'\55');
_i=((((T7*)a1))->_count/*4*/)+(1);
_val=C;
while (!((_val)==(0))) {
r7extend(((T7*)a1),r2digit(-((_val)%(10))));
_val=(_val)/(10);
}
}
/*FI]*/
_val=(((T7*)a1))->_count/*4*/;
while (!((_i)>=(_val))) {
r7swap(((T7*)a1),_i,_val);
_val=(_val)-(1);
_i=(_i)+(1);
}
}
/*FI]*/
}
T0* r2to_string(T2 C){
T0* R=NULL;
{T7*n=malloc(sizeof(*n));
*n=M7;
r7make(n,0);
R=(T0*)n;
}
r2append_in(C,R);
return R;
}
T3 r2hexadecimal_digit(T2 C){
T3 R=0;
/*[IF*/
if((C)<=(9)){
R=r2digit(C);
}
else{
R=((T3)((((unsigned char)'A'))+((C)-(10))));
}
/*FI]*/
return R;
}
T2 r2min(T2 C,T2 a1){
T2 R=0;
/*[IF*/
if((C)<(a1)){
R=C;
}
else{
R=a1;
}
/*FI]*/
return R;
}
T3 r2digit(T2 C){
T3 R=0;
R=((T3)((C)+(((unsigned char)'0'))));
return R;
}
T2 r2_px_94(T2 C,T2 a1){
T2 R=0;
/*[IF*/
if((a1)==(0)){
R=1;
}
else if(((a1)%(2))==(0)){
R=r2_px_94((C)*(C),(a1)/(2));
}
else{
R=(C)*(r2_px_94(C,(a1)-(1)));
}
/*FI]*/
return R;
}
T2 r2max(T2 C,T2 a1){
T2 R=0;
/*[IF*/
if((a1)<(C)){
R=C;
}
else{
R=a1;
}
/*FI]*/
return R;
}
T2 r2to_octal(T2 C){
T2 R=0;
/*[IF*/
if((C)==(0)){
}
else if((C)<(0)){
R=-(r2to_octal(-(C)));
}
else{
/*[IRF3.3clear*/((((T7*)((T7*)(oBC2tmp_string))))->_count)=(0);
/*]*/
R=C;
while (!((R)==(0))) {
r7extend((T7*)(oBC2tmp_string),r2digit((R)%(8)));
R=(R)/(8);
}
r7reverse((T7*)(oBC2tmp_string));
R=r7to_integer((T7*)(oBC2tmp_string));
}
/*FI]*/
return R;
}
T0*oBC2tmp_string=NULL;
T2 r2hash_code(T2 C){
T2 R=0;
/*[IF*/
if((C)<(0)){
R=-((C)+(1));
}
else{
R=C;
}
/*FI]*/
return R;
}
T3 r3to_upper(T3 C){
T3 R=0;
/*[IF*/
if((((unsigned char)C))<(97)){
R=C;
}
else if((((unsigned char)C))>(122)){
R=C;
}
else{
R=((T3)((((unsigned char)C))-(32)));
}
/*FI]*/
return R;
}
T6 r3is_separator(T3 C){
T6 R=0;
{int z1=C;
if((0==z1)||((9<=z1)&&(z1<=10))||(13==z1)||(32==z1)){
R=1;
}
}
return R;
}
T3 r3to_lower(T3 C){
T3 R=0;
/*[IF*/
if((((unsigned char)C))<(65)){
R=C;
}
else if((((unsigned char)C))>(90)){
R=C;
}
else{
R=((T3)((((unsigned char)C))+(32)));
}
/*FI]*/
return R;
}
T6 r3same_as(T3 C,T3 a1){
T6 R=0;
/*[IF*/
if((C)==(a1)){
R=1;
}
else{
{int z1=((unsigned char)C);
if(((65<=z1)&&(z1<=90))){
R=(((unsigned char)C))==((((unsigned char)a1))-(32));
}
else
if(((97<=z1)&&(z1<=122))){
R=(((unsigned char)C))==((((unsigned char)a1))+(32));
}
}
}
/*FI]*/
return R;
}
T6 r3_px_6261(T3 C,T3 a1){
T6 R=0;
R=(((unsigned char)C))>=(((unsigned char)a1));
return R;
}
T6 r3_px_60(T3 C,T3 a1){
T6 R=0;
R=(((unsigned char)C))<(((unsigned char)a1));
return R;
}
T6 r3is_letter(T3 C){
T6 R=0;
{int z1=C;
if(((65<=z1)&&(z1<=90))||((97<=z1)&&(z1<=122))){
R=1;
}
}
return R;
}
T6 r3is_digit(T3 C){
T6 R=0;
{int z1=C;
if(((48<=z1)&&(z1<=57))){
R=1;
}
}
return R;
}
T2 r3value(T3 C){
T2 R=0;
R=(((unsigned char)C))-(48);
return R;
}
T359 r359realloc(T359 C,T2 a1,T2 a2){
T359 R=NULL;
R=calloc(a2,sizeof(T0*));
r359copy_from(R,C,(a1)-(1));
return R;
}
void r359set_all_with(T359 C,T0* a1,T2 a2){
T2 _i=0;
_i=a2;
while (!((_i)<(0))) {
(C)[_i]=(a1);
_i=(_i)-(1);
}
}
T2 r359fast_index_of(T359 C,T0* a1,T2 a2){
T2 R=0;
while (!(((R)>(a2))||((a1)==((void*)((C)[R]))))) {
R=(R)+(1);
}
return R;
}
void r359copy_from(T359 C,T359 a1,T2 a2){
T2 _i=0;
_i=a2;
while (!((_i)<(0))) {
(C)[_i]=((a1)[_i]);
_i=(_i)-(1);
}
}
T6 r9fast_memcmp(T9 C,T9 a1,T2 a2){
T6 R=0;
T2 _i=0;
R=1;
_i=(a2)-(1);
while (!(((_i)<(0))||(!(R)))) {
R=((C)[_i])==((a1)[_i]);
_i=(_i)-(1);
}
return R;
}
T9 r9realloc(T9 C,T2 a1,T2 a2){
T9 R=NULL;
R=calloc(a2,sizeof(T3));
r9copy_from(R,C,(a1)-(1));
return R;
}
void r9copy_at(T9 C,T2 a1,T9 a2,T2 a3){
T2 _i2=0;
T2 _i1=0;
_i1=a1;
while (!((_i2)==(a3))) {
(C)[_i1]=((a2)[_i2]);
_i2=(_i2)+(1);
_i1=(_i1)+(1);
}
}
T2 r9fast_index_of(T9 C,T3 a1,T2 a2){
T2 R=0;
while (!(((R)>(a2))||((a1)==((C)[R])))) {
R=(R)+(1);
}
return R;
}
void r9copy_from(T9 C,T9 a1,T2 a2){
T2 _i=0;
_i=a2;
while (!((_i)<(0))) {
(C)[_i]=((a1)[_i]);
_i=(_i)-(1);
}
}
T61 r61realloc(T61 C,T2 a1,T2 a2){
T61 R=NULL;
R=calloc(a2,sizeof(T0*));
r61copy_from(R,C,(a1)-(1));
return R;
}
void r61set_all_with(T61 C,T0* a1,T2 a2){
T2 _i=0;
_i=a2;
while (!((_i)<(0))) {
(C)[_i]=(a1);
_i=(_i)-(1);
}
}
T2 r61fast_index_of(T61 C,T0* a1,T2 a2){
T2 R=0;
while (!(((R)>(a2))||((a1)==((void*)((C)[R]))))) {
R=(R)+(1);
}
return R;
}
void r61copy_from(T61 C,T61 a1,T2 a2){
T2 _i=0;
_i=a2;
while (!((_i)<(0))) {
(C)[_i]=((a1)[_i]);
_i=(_i)-(1);
}
}